﻿using System;

namespace ConsoleApp1
{
    class Program
    {
        //定义一个结构体，名为PersonStruct，有三个成员变量：姓名、电话、地址，
        //在主方法中，创建一个PersonStruct结构体对象p1，为p1的成员变量赋值。
        //再声明一个PersonStruct结构体变量p2，把p1赋值给p2，改变p2的姓名，打印p1的内容。

        //定义一个类，名为PersonClass，有三个成员变量：姓名、电话、地址，
        //在主方法中，创建一个PersonClass对象p3，为p3的成员变量赋值。
        //再声明一个PersonClass变量p4，把p3赋值给p4，改变p4的姓名，打印p3的内容。
        //观察打印结果，并在在注释中，说下你对此的认识（它们为什么会这样？）
        struct PersonStruct
        {
            public string name;
            public int phone;
            public string site;
        }
        
        static void Main(string[] args)
        {
            PersonStruct p1 = new PersonStruct();
            p1.name = "张三";
            p1.phone = 100861189;
            p1.site = "提瓦特";
            Console.WriteLine("我的名字叫{0} 电话是{1} 来自{2}", p1.name, p1.phone, p1.site);


            PersonStruct p2 = p1;
            p2.name = "李四";
            Console.WriteLine("我的名字叫{0} 电话是{1} 来自{2}", p1.name, p1.phone, p1.site);

            PersonClass p3 = new PersonClass();
            p3.name = "王五";
            p3.phone = 1984654646;
            p3.site = "黑色玫瑰";
            Console.WriteLine("我的名字叫{0} 电话是{1} 来自{2}", p3.name, p3.phone, p3.site);

            PersonClass p4 = p3;
            p4.name = "马六";
            Console.WriteLine("我的名字叫{0} 电话是{1} 来自{2}", p3.name, p3.phone, p3.site);


        }

    }
}
